PM3.02 - Game & Watch - Subroutine - 0x1acdc

  1. if (BoolIsTrue RandomAccessBool (0x11))
    1. Subroutine(0x27f28)
    2. IntVariableIncrement { variable: RandomAccessInt (0x0) }
    3. BoolVariableSetFalse { variable: RandomAccessBool (0x11) }
  2. if (ButtonNotPressed value(1))
    1. BoolVariableSetTrue { variable: RandomAccessBool(EnableJabLoop) }
  3. if ((RandomAccessInt (0x0) LessThan InternalConstantInt (0x5dc0)))
    1. if (BoolIsTrue RandomAccessBool(EnableGlide))
      1. IfStatementAnd (not(BoolIsTrue RandomAccessBool(EnableJabLoop)))
      2. UnknownEvent { namespace: 0x4, code: 0x6, unk1: 0x0, arguments: [Variable(Variable { memory_type: InternalConstant, data_type: Int, address: 4000 })] }
      3. UnknownEvent { namespace: 0x4, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: InternalConstant, data_type: Int, address: 20000 }), Bool(true)] }
      4. if (OnGround)
        1. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: InAir }] }
      5. else
        1. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: OnGround }] }
      6. BoolVariableSetFalse { variable: RandomAccessBool(EnableGlide) }
    2. if (BoolIsTrue RandomAccessBool(SpecialsMovement))
      1. IfStatementAnd (ButtonPress value(1))
      2. UnknownEvent { namespace: 0x4, code: 0x6, unk1: 0x0, arguments: [Variable(Variable { memory_type: InternalConstant, data_type: Int, address: 4000 })] }
      3. UnknownEvent { namespace: 0x4, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: InternalConstant, data_type: Int, address: 20000 }), Bool(true)] }
      4. if (OnGround)
        1. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: InAir }] }
      5. else
        1. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: OnGround }] }
      6. BoolVariableSetFalse { variable: RandomAccessBool(SpecialsMovement) }